// use std::{ collections::HashMap, pin::Pin};

// use axum_app_web::model::{BizRequest, PageRequest, user::UserPageRequest};
// use futures::Future;

// type FutPin = Pin<Box<dyn Future<Output = Result<String, String>>>>;
// type MyHandle = Box<dyn Fn(dyn BizRequest + Send) -> FutPin>;

// #[tokio::test]
// async fn test() -> Result<(), String> {
//     let mut handles = HashMap::<&str, MyHandle>::new();

//     handles.insert("handle1", Box::new(|p| Box::pin(handle_1(p))));

//     Ok(())
// }

// async fn handle_1(param: PageRequest<UserPageRequest>) -> Result<String, String> {
//     Ok(format!("call handler_1 and return {:?}", param))
// }

// async fn handle_2(param: PageRequest<UserPageRequest>) -> Result<String, String> {
//     Ok(format!("call handler_2 and return {:?}", param))
// }
